eliminate usage of obsolete QString::sprintf(). (#457)
authortsteven4 <13596209+tsteven4@users.noreply.github.com>
Sun, 12 Jan 2020 14:08:57 +0000 (07:08 -0700)
committerGitHub <noreply@github.com>
Sun, 12 Jan 2020 14:08:57 +0000 (07:08 -0700)
in favor of the merely not recommended QString::asprintf().

12 files changed:
an1.cc
csv_util.cc
gdb.cc
gtrnctr.cc
lowranceusr.cc
mtk_logger.cc
pcx.cc
psitrex.cc
saroute.cc
skytraq.cc
vitosmt.cc
xcsv.cc

diff --git a/an1.cc b/an1.cc
index d45e0f2ae2e8d19ebeaccb867a608acb8a1c7859..ede6bfcabe4dc311aae9adc43bc7b4598813c17d 100644 (file)
--- a/an1.cc
+++ b/an1.cc
@@ -828,7 +828,7 @@ static void Read_AN1_Lines(gbfile* f)
       Waypoint* wpt_tmp = new Waypoint;
       wpt_tmp->latitude = DecodeOrd(vert->lat);
       wpt_tmp->longitude = -DecodeOrd(vert->lon);
-      wpt_tmp->shortname = QString().sprintf("\\%5.5lx", rtserial++);
+      wpt_tmp->shortname = QString::asprintf("\\%5.5lx", rtserial++);
       fs_chain_add(&wpt_tmp->fs,
                    (format_specific_data*)vert);
       route_add_wpt(rte_head, wpt_tmp);
index 257c286b85fda20ac9cceb16fc02be6cda4fb188..770e3c80d4df1b41f91f35540e0fa67bb3f51b4b 100644 (file)
@@ -705,7 +705,7 @@ dec_to_human(const char* format, const char* dirs, double val)
       *(type+1) = '\0';
       switch (*type) {
       case 'c':
-        buff += QString().sprintf(subformat, dirs[sign]);
+        buff += QString::asprintf(subformat, dirs[sign]);
         break;
       case 'd':
       case 'i':
@@ -716,7 +716,7 @@ dec_to_human(const char* format, const char* dirs, double val)
         if (index>2) {
           fatal(MYNAME ": too many format specifiers\n");
         }
-        buff += QString().sprintf(subformat, intvals[index]);
+        buff += QString::asprintf(subformat, intvals[index]);
         index++;
         break;
       case 'e':
@@ -727,7 +727,7 @@ dec_to_human(const char* format, const char* dirs, double val)
         if (index>2) {
           fatal(MYNAME ": too many format specifiers\n");
         }
-        buff += QString().sprintf(subformat, dblvals[index]);
+        buff += QString::asprintf(subformat, dblvals[index]);
         index++;
         break;
       case '%':
diff --git a/gdb.cc b/gdb.cc
index 85474387b0ee21037341c9b875da020139c1446b..97f5ccc657ded64a829dfde799bed894b66c0def 100644 (file)
--- a/gdb.cc
+++ b/gdb.cc
@@ -1635,7 +1635,7 @@ write_route_cb(const route_head* rte)
 
   QString name;
   if (rte->rte_name.isNull()) {
-    name = mkshort(short_h, QString().sprintf("Route%04d", rte->rte_num));
+    name = mkshort(short_h, QString::asprintf("Route%04d", rte->rte_num));
   } else {
     name = mkshort(short_h, rte->rte_name);
   }
@@ -1657,7 +1657,7 @@ write_track_cb(const route_head* trk)
 
   QString name; 
   if (trk->rte_name.isNull()) {
-    name = mkshort(short_h, QString().sprintf("Track%04d", trk->rte_num));
+    name = mkshort(short_h, QString::asprintf("Track%04d", trk->rte_num));
   } else {
     name = mkshort(short_h, trk->rte_name);
   }
index 4e1e1ea96db17b53c140409ca1f89bb1d07634af..492438e1f9bfeea82239e428ecd0aa9f846a6e95 100644 (file)
@@ -599,7 +599,7 @@ gtc_wpt_pnt_e(xg_string, const QXmlStreamAttributes*)
   if (wpt_tmp->longitude != 0. && wpt_tmp->latitude != 0.) {
     /* Add the begin position of a CourseLap as
     a waypoint. */
-    wpt_tmp->shortname = QString().sprintf("LAP%03d", lap_ct);
+    wpt_tmp->shortname = QString::asprintf("LAP%03d", lap_ct);
     waypt_add(wpt_tmp);
   } else {
     delete wpt_tmp;
index 105fb0a23194b1ba750cc963809da8c4c23a770f..af9b8d0d34710648db6177220eac5a612eca7f69 100644 (file)
@@ -2017,7 +2017,7 @@ lowranceusr_route_hdr(const route_head* rte)
   } else if (!rte->rte_desc.isEmpty()) {
     name = rte->rte_desc;
   } else {
-    name = QString().sprintf("Babel R%d", ++lowrance_route_count);
+    name = QString::asprintf("Babel R%d", ++lowrance_route_count);
   }
   int text_len = std::min(name.size(), MAXUSRSTRINGSIZE);
   name.truncate(text_len);
@@ -2134,7 +2134,7 @@ lowranceusr_merge_trail_hdr(const route_head* trk)
     } else if (!trk->rte_desc.isEmpty()) {
       name = trk->rte_desc;
     } else {
-      name = QString().sprintf("Babel %d", trail_count);
+      name = QString::asprintf("Babel %d", trail_count);
     }
 
     int text_len = std::min(MAXUSRSTRINGSIZE, name.size());
index 3b47f0544dece0fb32d6b72fcfe8c88976e734c4..50ef8c56e5cf75cf8ef81d89b18d5d530947f69a 100644 (file)
@@ -814,7 +814,7 @@ static int add_trackpoint(int idx, unsigned long bmask, struct data_item* itm)
     if (mtk_info.speed > 0) {
       sprintf(spds, " when moving above %.0f km/h", mtk_info.speed/10.);
     }
-    trk_head->rte_desc = QString().sprintf("Log every %.0f sec, %.0f m%s"
+    trk_head->rte_desc = QString::asprintf("Log every %.0f sec, %.0f m%s"
                                            , mtk_info.period/10., mtk_info.distance/10., spds);
     track_add_head(trk_head);
   }
@@ -901,7 +901,7 @@ static int add_trackpoint(int idx, unsigned long bmask, struct data_item* itm)
     /* Button press -- create waypoint, start count at 1 */
     Waypoint* w = new Waypoint(*trk);
 
-    w->shortname = QString().sprintf("WP%06d", waypt_count()+1);
+    w->shortname = QString::asprintf("WP%06d", waypt_count()+1);
     waypt_add(w);
   }
   // In theory we would not add the waypoint to the list of
@@ -910,7 +910,7 @@ static int add_trackpoint(int idx, unsigned long bmask, struct data_item* itm)
   // trackpoint unless we include/duplicate it.
 
   if (global_opts.masked_objective & TRKDATAMASK) {
-    trk->shortname = QString().sprintf("TP%06d", idx);
+    trk->shortname = QString::asprintf("TP%06d", idx);
 
     track_add_wpt(trk_head, trk);
   } else {
diff --git a/pcx.cc b/pcx.cc
index 683e14f90de0445d617f922b7eba0d555b407cf9..8649b5e58f4a19c58c7b0cc4d32e569fdf31dfd2 100644 (file)
--- a/pcx.cc
+++ b/pcx.cc
@@ -321,7 +321,7 @@ static void gpsutil_disp(const Waypoint* wpt) {
 static void pcx_track_hdr(const route_head* trk) {
   route_ctr++;
 
-  QString default_name = QString().sprintf("Trk%03d", route_ctr);
+  QString default_name = QString::asprintf("Trk%03d", route_ctr);
   QString name =
       mkshort(mkshort_handle2,
               trk->rte_name.isEmpty() ? CSTR(default_name) : trk->rte_name);
@@ -337,7 +337,7 @@ static void pcx_track_hdr(const route_head* trk) {
 
 static void pcx_route_hdr(const route_head* rte) {
   route_ctr++;
-  QString default_name = QString().sprintf("Rte%03d", route_ctr);
+  QString default_name = QString::asprintf("Rte%03d", route_ctr);
 
   QString name = mkshort(
       mkshort_handle2, rte->rte_name.isEmpty() ? default_name : rte->rte_name);
index 492491f758e8d667b095570dffb0d286ae3fad19..1ce087f538bce8c050072591f552bdcdbb96f54b 100644 (file)
@@ -568,7 +568,7 @@ psit_track_r(gbfile* psit_file, route_head**)
          tracklog is usually ACTIVE LOG
          the second is ACTIVE LOG001 and so on */
         if (trk_num > 0) {
-          track_head->rte_name = QString().sprintf("%s%03d", trkname, trk_num);
+          track_head->rte_name = QString::asprintf("%s%03d", trkname, trk_num);
         } else {
           track_head->rte_name = trkname;
         }
index f011b9b29a37d024465d1d5c2f44b12365949ac8..23481eea99859c18fd8770388ed45b88a81739fc 100644 (file)
@@ -216,7 +216,7 @@ my_read()
         wpt_tmp->shortname = "booger";
         wpt_tmp->notes = "goober";
       } else {
-        wpt_tmp->shortname = QString().sprintf("\\%5.5x", serial++);
+        wpt_tmp->shortname = QString::asprintf("\\%5.5x", serial++);
       }
       if (control == 2) {
         waypt_add(wpt_tmp);
@@ -336,7 +336,7 @@ my_read()
         if (stringlen && ((coordcount>1) || count)) {
           wpt_tmp->shortname = QString(((char*)record)+2);
         } else {
-          wpt_tmp->shortname = QString().sprintf("\\%5.5x", serial++);
+          wpt_tmp->shortname = QString::asprintf("\\%5.5x", serial++);
         }
         if (timesynth) {
           if (!first) {
index 1703842f553299a7bd5b449885fe5dc7c2fe9c32..248c56ecc29115937261095654f89bb31af449b4 100644 (file)
@@ -696,7 +696,7 @@ make_trackpoint(struct read_state* st, double lat, double lon, double alt)
 {
   Waypoint* wpt = new Waypoint;
 
-  wpt->shortname = QString().sprintf("TP%04d", ++st->tpn);
+  wpt->shortname = QString::asprintf("TP%04d", ++st->tpn);
 
   wpt->latitude       = lat;
   wpt->longitude      = lon;
@@ -1562,8 +1562,8 @@ static void miniHomer_get_poi()
       ECEF_to_LLA(ecef_x, ecef_y, ecef_z, &lat, &lng, &alt);
 
       Waypoint* wpt = new Waypoint;
-      wpt->shortname      = QString().sprintf("POI_%s", poinames[poi]);
-      wpt->description    = QString().sprintf("miniHomer points to this coordinates if the %s symbol is on", poinames[poi]);
+      wpt->shortname      = QString::asprintf("POI_%s", poinames[poi]);
+      wpt->description    = QString::asprintf("miniHomer points to this coordinates if the %s symbol is on", poinames[poi]);
       wpt->latitude       = lat;
       wpt->longitude      = lng;
       wpt->altitude       = alt;
index 1b851542d1affda88a56af4122ab1faa5d29da0d..acebc352388e2b084a5ba58f3fefd9db3f942758 100644 (file)
@@ -142,7 +142,7 @@ vitosmt_read()
 
     double usec = fmod(1000000*seconds+0.5,1000000);
     wpt_tmp->SetCreationTime(mkgmtime(&tmStruct), lround(usec/1000.0));
-    wpt_tmp->shortname = QString().sprintf("WP%04d", ++serial);
+    wpt_tmp->shortname = QString::asprintf("WP%04d", ++serial);
 
     WAYPT_SET(wpt_tmp, speed, KNOTS_TO_MPS(speed)); /* meters per second */
     WAYPT_SET(wpt_tmp, course, course);
diff --git a/xcsv.cc b/xcsv.cc
index dadb466b5211cb9e33e78f39e5dba0020772c6ed..bf8bf5856ccb75490e3720fd6bde194be80d6469 100644 (file)
--- a/xcsv.cc
+++ b/xcsv.cc
@@ -550,7 +550,7 @@ writehms(const char* format, time_t t, int gmt)
     stmp = &no_time;
   }
 
-  return QString().sprintf(format,
+  return QString::asprintf(format,
                             stmp->tm_hour, stmp->tm_min, stmp->tm_sec,
                             (stmp->tm_hour >= 12 ? "PM" : "AM"));
 }
@@ -1238,22 +1238,22 @@ xcsv_waypt_pr(const Waypoint* wpt)
     switch (fmp.hashed_key) {
     case XT_IGNORE:
       /* IGNORE -- Write the char printf conversion */
-      buff = QString().sprintf(fmp.printfc.constData(), "");
+      buff = QString::asprintf(fmp.printfc.constData(), "");
       break;
     case XT_INDEX:
-      buff = QString().sprintf(fmp.printfc.constData(), waypt_out_count + atoi(fmp.val.constData()));
+      buff = QString::asprintf(fmp.printfc.constData(), waypt_out_count + atoi(fmp.val.constData()));
       break;
     case XT_CONSTANT: {
       auto cp = xcsv_get_char_from_constant_table(fmp.val.constData());
       if (!cp.isEmpty()) {
-        buff = QString().sprintf(fmp.printfc.constData(), CSTR(cp));
+        buff = QString::asprintf(fmp.printfc.constData(), CSTR(cp));
       } else {
-        buff = QString().sprintf(fmp.printfc.constData(), fmp.val.constData());
+        buff = QString::asprintf(fmp.printfc.constData(), fmp.val.constData());
       }
     }
     break;
     case XT_SHORTNAME:
-               buff = QString().sprintf(fmp.printfc.constData(),
+               buff = QString::asprintf(fmp.printfc.constData(),
                 shortname.isEmpty() ? fmp.val.constData() : CSTR(shortname));
 
       break;
@@ -1272,16 +1272,16 @@ xcsv_waypt_pr(const Waypoint* wpt)
       if (anyname.isEmpty()) {
         anyname = fmp.val.constData();
       }
-      buff = QString().sprintf(fmp.printfc.constData(), CSTR(anyname));
+      buff = QString::asprintf(fmp.printfc.constData(), CSTR(anyname));
       }
 
       break;
     case XT_DESCRIPTION:
-      buff = QString().sprintf(fmp.printfc.constData(),
+      buff = QString::asprintf(fmp.printfc.constData(),
                 description.isEmpty() ? fmp.val.constData() : CSTR(description));
       break;
     case XT_NOTES:
-      buff = QString().sprintf(fmp.printfc.constData(),
+      buff = QString::asprintf(fmp.printfc.constData(),
                 wpt->notes.isEmpty() ? fmp.val.constData() : CSTR(wpt->notes));
       break;
     case XT_URL: {
@@ -1290,21 +1290,21 @@ xcsv_waypt_pr(const Waypoint* wpt)
       }
       if (wpt->HasUrlLink()) {
         UrlLink l = wpt->GetUrlLink();
-        buff += QString().sprintf(fmp.printfc.constData(), CSTR(l.url_));
+        buff += QString::asprintf(fmp.printfc.constData(), CSTR(l.url_));
       } else {
-        buff += QString().sprintf(fmp.printfc.constData(), fmp.val.constData() && *fmp.val.constData() ? fmp.val.constData() : "\"\"");
+        buff += QString::asprintf(fmp.printfc.constData(), fmp.val.constData() && *fmp.val.constData() ? fmp.val.constData() : "\"\"");
       }
     }
     break;
     case XT_URL_LINK_TEXT:
       if (wpt->HasUrlLink()) {
         UrlLink l = wpt->GetUrlLink();
-        buff = QString().sprintf(fmp.printfc.constData(),
+        buff = QString::asprintf(fmp.printfc.constData(),
                  !l.url_link_text_.isEmpty() ? CSTR(l.url_link_text_) : fmp.val.constData());
       }
       break;
     case XT_ICON_DESCR:
-      buff = QString().sprintf(fmp.printfc.constData(),
+      buff = QString::asprintf(fmp.printfc.constData(),
                 (!wpt->icon_descr.isNull()) ?
                 CSTR(wpt->icon_descr) : fmp.val.constData());
       break;
@@ -1312,22 +1312,22 @@ xcsv_waypt_pr(const Waypoint* wpt)
       /* LATITUDE CONVERSION***********************************************/
     case XT_LAT_DECIMAL:
       /* latitude as a pure decimal value */
-      buff = QString().sprintf(fmp.printfc.constData(), lat);
+      buff = QString::asprintf(fmp.printfc.constData(), lat);
       break;
     case XT_LAT_DECIMALDIR:
       /* latitude as a decimal value with N/S after it */
-      buff = QString().sprintf(fmp.printfc.constData(), fabs(lat),
+      buff = QString::asprintf(fmp.printfc.constData(), fabs(lat),
                LAT_DIR(lat));
       break;
     case XT_LAT_DIRDECIMAL:
       /* latitude as a decimal value with N/S before it */
-      buff = QString().sprintf(fmp.printfc.constData(),
+      buff = QString::asprintf(fmp.printfc.constData(),
                LAT_DIR(lat),
                fabs(lat));
       break;
     case XT_LAT_INT32DEG:
       /* latitude as an integer offset from 0 degrees */
-      buff = QString().sprintf(fmp.printfc.constData(),
+      buff = QString::asprintf(fmp.printfc.constData(),
                 dec_to_intdeg(lat));
       break;
     case XT_LAT_DDMMDIR:
@@ -1338,29 +1338,29 @@ xcsv_waypt_pr(const Waypoint* wpt)
       buff = dec_to_human(fmp.printfc.constData(), "SN", lat);
       break;
     case XT_LAT_NMEA:
-      buff = QString().sprintf(fmp.printfc.constData(), degrees2ddmm(lat));
+      buff = QString::asprintf(fmp.printfc.constData(), degrees2ddmm(lat));
       break;
       // case XT_LAT_10E is handled outside the switch.
       /* LONGITUDE CONVERSIONS*********************************************/
     case XT_LON_DECIMAL:
       /* longitude as a pure decimal value */
-      buff = QString().sprintf(fmp.printfc.constData(), lon);
+      buff = QString::asprintf(fmp.printfc.constData(), lon);
       break;
     case XT_LON_DECIMALDIR:
       /* latitude as a decimal value with N/S after it */
-      buff = QString().sprintf(fmp.printfc.constData(),
+      buff = QString::asprintf(fmp.printfc.constData(),
                fabs(lon),
                LON_DIR(lon));
       break;
     case XT_LON_DIRDECIMAL:
       /* latitude as a decimal value with N/S before it */
-      buff = QString().sprintf(fmp.printfc.constData(),
+      buff = QString::asprintf(fmp.printfc.constData(),
                LON_DIR(lon),
                fabs(lon));
       break;
     case XT_LON_INT32DEG:
       /* longitude as an integer offset from 0 degrees */
-      buff = QString().sprintf(fmp.printfc.constData(),
+      buff = QString::asprintf(fmp.printfc.constData(),
                 dec_to_intdeg(lon));
       break;
     case XT_LON_DDMMDIR:
@@ -1378,18 +1378,18 @@ xcsv_waypt_pr(const Waypoint* wpt)
       buff = buff.simplified();
       break;
     case XT_LON_NMEA:
-      buff = QString().sprintf(fmp.printfc.constData(), degrees2ddmm(lon));
+      buff = QString::asprintf(fmp.printfc.constData(), degrees2ddmm(lon));
       break;
       // case XT_LON_10E is handled outside the switch.
       /* DIRECTIONS *******************************************************/
     case XT_LAT_DIR:
       /* latitude N/S as a char */
-      buff = QString().sprintf(fmp.printfc.constData(),
+      buff = QString::asprintf(fmp.printfc.constData(),
                 LAT_DIR(lat));
       break;
     case XT_LON_DIR:
       /* longitude E/W as a char */
-      buff = QString().sprintf(fmp.printfc.constData(),
+      buff = QString::asprintf(fmp.printfc.constData(),
                 LON_DIR(lon));
       break;
 
@@ -1400,7 +1400,7 @@ xcsv_waypt_pr(const Waypoint* wpt)
       if (! GPS_Math_WGS84_To_UKOSMap_M(wpt->latitude, wpt->longitude, &east, &north, map))
         fatal(MYNAME ": Position (%.5f/%.5f) outside of BNG.\n",
               wpt->latitude, wpt->longitude);
-      buff = QString().sprintf(fmp.printfc.constData(), map, (int)(east + 0.5), (int)(north + 0.5));
+      buff = QString::asprintf(fmp.printfc.constData(), map, (int)(east + 0.5), (int)(north + 0.5));
     }
     break;
     case XT_UTM: {
@@ -1409,18 +1409,18 @@ xcsv_waypt_pr(const Waypoint* wpt)
                                &utme, &utmn, &utmz, &utmzc);
       snprintf(tbuf, sizeof(tbuf), "%d%c %6.0f %7.0f",
                utmz, utmzc, utme, utmn);
-      buff = QString().sprintf(fmp.printfc.constData(), tbuf);
+      buff = QString::asprintf(fmp.printfc.constData(), tbuf);
     }
     break;
     case XT_UTM_ZONE:
       GPS_Math_WGS84_To_UTM_EN(wpt->latitude, wpt->longitude,
                                &utme, &utmn, &utmz, &utmzc);
-      buff = QString().sprintf(fmp.printfc.constData(), utmz);
+      buff = QString::asprintf(fmp.printfc.constData(), utmz);
       break;
     case XT_UTM_ZONEC:
       GPS_Math_WGS84_To_UTM_EN(wpt->latitude, wpt->longitude,
                                &utme, &utmn, &utmz, &utmzc);
-      buff = QString().sprintf(fmp.printfc.constData(), utmzc);
+      buff = QString::asprintf(fmp.printfc.constData(), utmzc);
       break;
     case XT_UTM_ZONEF: {
       char tbuf[10];
@@ -1428,32 +1428,32 @@ xcsv_waypt_pr(const Waypoint* wpt)
                                &utme, &utmn, &utmz, &utmzc);
       tbuf[0] = 0;
       snprintf(tbuf, sizeof(tbuf), "%d%c", utmz, utmzc);
-      buff = QString().sprintf(fmp.printfc.constData(), tbuf);
+      buff = QString::asprintf(fmp.printfc.constData(), tbuf);
     }
     break;
     case XT_UTM_NORTHING:
       GPS_Math_WGS84_To_UTM_EN(wpt->latitude, wpt->longitude,
                                &utme, &utmn, &utmz, &utmzc);
-      buff = QString().sprintf(fmp.printfc.constData(), utmn);
+      buff = QString::asprintf(fmp.printfc.constData(), utmn);
       break;
     case XT_UTM_EASTING:
       GPS_Math_WGS84_To_UTM_EN(wpt->latitude, wpt->longitude,
                                &utme, &utmn, &utmz, &utmzc);
-      buff = QString().sprintf(fmp.printfc.constData(), utme);
+      buff = QString::asprintf(fmp.printfc.constData(), utme);
       break;
 
       /* ALTITUDE CONVERSIONS**********************************************/
     case XT_ALT_FEET:
       /* altitude in feet as a decimal value */
       if (wpt->altitude != unknown_alt) {
-        buff = QString().sprintf(fmp.printfc.constData(),
+        buff = QString::asprintf(fmp.printfc.constData(),
                   METERS_TO_FEET(wpt->altitude));
       }
       break;
     case XT_ALT_METERS:
       /* altitude in meters as a decimal value */
       if (wpt->altitude != unknown_alt) {
-        buff = QString().sprintf(fmp.printfc.constData(),
+        buff = QString::asprintf(fmp.printfc.constData(),
                   wpt->altitude);
       }
       break;
@@ -1464,83 +1464,83 @@ xcsv_waypt_pr(const Waypoint* wpt)
     case XT_PATH_DISTANCE_MILES:
       /* path (route/track) distance in miles */
       if (wpt->odometer_distance) {
-        buff = QString().sprintf(fmp.printfc.constData(), METERS_TO_MILES(wpt->odometer_distance));
+        buff = QString::asprintf(fmp.printfc.constData(), METERS_TO_MILES(wpt->odometer_distance));
       } else {
-        buff = QString().sprintf(fmp.printfc.constData(), pathdist);
+        buff = QString::asprintf(fmp.printfc.constData(), pathdist);
       }
       break;
     case XT_PATH_DISTANCE_METERS:
       /* path (route/track) distance in meters */
       if (wpt->odometer_distance) {
-        buff = QString().sprintf(fmp.printfc.constData(), wpt->odometer_distance);
+        buff = QString::asprintf(fmp.printfc.constData(), wpt->odometer_distance);
       } else {
-        buff = QString().sprintf(fmp.printfc.constData(), MILES_TO_METERS(pathdist));
+        buff = QString::asprintf(fmp.printfc.constData(), MILES_TO_METERS(pathdist));
       }
       break;
     case XT_PATH_DISTANCE_KM:
       /* path (route/track) distance in kilometers */
       if (wpt->odometer_distance) {
-        buff = QString().sprintf(fmp.printfc.constData(), wpt->odometer_distance / 1000.0);
+        buff = QString::asprintf(fmp.printfc.constData(), wpt->odometer_distance / 1000.0);
       } else {
-        buff = QString().sprintf(fmp.printfc.constData(), MILES_TO_METERS(pathdist) / 1000.0);
+        buff = QString::asprintf(fmp.printfc.constData(), MILES_TO_METERS(pathdist) / 1000.0);
       }
       break;
     case XT_PATH_SPEED:
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->speed);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->speed);
       break;
     case XT_PATH_SPEED_KPH:
-      buff = QString().sprintf(fmp.printfc.constData(), MPS_TO_KPH(wpt->speed));
+      buff = QString::asprintf(fmp.printfc.constData(), MPS_TO_KPH(wpt->speed));
       break;
     case XT_PATH_SPEED_MPH:
-      buff = QString().sprintf(fmp.printfc.constData(), MPS_TO_MPH(wpt->speed));
+      buff = QString::asprintf(fmp.printfc.constData(), MPS_TO_MPH(wpt->speed));
       break;
     case XT_PATH_SPEED_KNOTS:
-      buff = QString().sprintf(fmp.printfc.constData(), MPS_TO_KNOTS(wpt->speed));
+      buff = QString::asprintf(fmp.printfc.constData(), MPS_TO_KNOTS(wpt->speed));
       break;
     case XT_PATH_COURSE:
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->course);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->course);
       break;
 
       /* HEART RATE CONVERSION***********************************************/
     case XT_HEART_RATE:
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->heartrate);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->heartrate);
       break;
       /* CADENCE CONVERSION***********************************************/
     case XT_CADENCE:
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->cadence);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->cadence);
       break;
       /* POWER CONVERSION***********************************************/
     case XT_POWER:
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->power);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->power);
       break;
     case XT_TEMPERATURE:
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->temperature);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->temperature);
       break;
     case XT_TEMPERATURE_F:
-      buff = QString().sprintf(fmp.printfc.constData(), CELSIUS_TO_FAHRENHEIT(wpt->temperature));
+      buff = QString::asprintf(fmp.printfc.constData(), CELSIUS_TO_FAHRENHEIT(wpt->temperature));
       break;
       /* TIME CONVERSIONS**************************************************/
     case XT_EXCEL_TIME:
       /* creation time as an excel (double) time */
-      buff = QString().sprintf(fmp.printfc.constData(), TIMET_TO_EXCEL(wpt->GetCreationTime().toTime_t()));
+      buff = QString::asprintf(fmp.printfc.constData(), TIMET_TO_EXCEL(wpt->GetCreationTime().toTime_t()));
       break;
     case XT_TIMET_TIME:
       /* time as a time_t variable */
     {
       time_t tt = wpt->GetCreationTime().toTime_t();
-      buff = QString().sprintf(fmp.printfc.constData(), tt);
+      buff = QString::asprintf(fmp.printfc.constData(), tt);
     }
     break;
 
     case XT_TIMET_TIME_MS: {
       /* time as a time_t variable in milliseconds */
       buff = writetime("%ld", wpt->GetCreationTime().toTime_t(), false);
-      buff += QString().sprintf("%03d", wpt->GetCreationTime().time().msec());
+      buff += QString::asprintf("%03d", wpt->GetCreationTime().time().msec());
 
     }
     break;
     case XT_YYYYMMDD_TIME:
-      buff = QString().sprintf(fmp.printfc.constData(), time_to_yyyymmdd(wpt->GetCreationTime()));
+      buff = QString::asprintf(fmp.printfc.constData(), time_to_yyyymmdd(wpt->GetCreationTime()));
       break;
     case XT_GMT_TIME:
       buff = writetime(fmp.printfc.constData(), wpt->GetCreationTime(), true);
@@ -1561,93 +1561,93 @@ xcsv_waypt_pr(const Waypoint* wpt)
       buff = wpt->GetCreationTime().toPrettyString();
       break;
     case XT_GEOCACHE_LAST_FOUND:
-      buff = QString().sprintf(fmp.printfc.constData(), time_to_yyyymmdd(wpt->gc_data->last_found));
+      buff = QString::asprintf(fmp.printfc.constData(), time_to_yyyymmdd(wpt->gc_data->last_found));
       break;
       /* GEOCACHE STUFF **************************************************/
     case XT_GEOCACHE_DIFF:
       /* Geocache Difficulty as a double */
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->gc_data->diff / 10.0);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->gc_data->diff / 10.0);
       field_is_unknown = !wpt->gc_data->diff;
       break;
     case XT_GEOCACHE_TERR:
       /* Geocache Terrain as a double */
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->gc_data->terr / 10.0);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->gc_data->terr / 10.0);
       field_is_unknown = !wpt->gc_data->terr;
       break;
     case XT_GEOCACHE_CONTAINER:
       /* Geocache Container */
-      buff = QString().sprintf(fmp.printfc.constData(), gs_get_container(wpt->gc_data->container));
+      buff = QString::asprintf(fmp.printfc.constData(), gs_get_container(wpt->gc_data->container));
       field_is_unknown = wpt->gc_data->container == gc_unknown;
       break;
     case XT_GEOCACHE_TYPE:
       /* Geocache Type */
-      buff = QString().sprintf(fmp.printfc.constData(), gs_get_cachetype(wpt->gc_data->type));
+      buff = QString::asprintf(fmp.printfc.constData(), gs_get_cachetype(wpt->gc_data->type));
       field_is_unknown = wpt->gc_data->type == gt_unknown;
       break;
     case XT_GEOCACHE_HINT:
-      buff = QString().sprintf(fmp.printfc.constData(), CSTR(wpt->gc_data->hint));
+      buff = QString::asprintf(fmp.printfc.constData(), CSTR(wpt->gc_data->hint));
       field_is_unknown = !wpt->gc_data->hint.isEmpty();
       break;
     case XT_GEOCACHE_PLACER:
-      buff = QString().sprintf(fmp.printfc.constData(), CSTR(wpt->gc_data->placer));
+      buff = QString::asprintf(fmp.printfc.constData(), CSTR(wpt->gc_data->placer));
       field_is_unknown = !wpt->gc_data->placer.isEmpty();
       break;
     case XT_GEOCACHE_ISAVAILABLE:
       if (wpt->gc_data->is_available == status_false) {
-        buff = QString().sprintf(fmp.printfc.constData(), "False");
+        buff = QString::asprintf(fmp.printfc.constData(), "False");
       } else if (wpt->gc_data->is_available == status_true) {
-        buff = QString().sprintf(fmp.printfc.constData(), "True");
+        buff = QString::asprintf(fmp.printfc.constData(), "True");
       } else {
-        buff = QString().sprintf(fmp.printfc.constData(), "Unknown");
+        buff = QString::asprintf(fmp.printfc.constData(), "Unknown");
       }
       break;
     case XT_GEOCACHE_ISARCHIVED:
       if (wpt->gc_data->is_archived == status_false) {
-        buff = QString().sprintf(fmp.printfc.constData(), "False");
+        buff = QString::asprintf(fmp.printfc.constData(), "False");
       } else if (wpt->gc_data->is_archived == status_true) {
-        buff = QString().sprintf(fmp.printfc.constData(), "True");
+        buff = QString::asprintf(fmp.printfc.constData(), "True");
       } else {
-        buff = QString().sprintf(fmp.printfc.constData(), "Unknown");
+        buff = QString::asprintf(fmp.printfc.constData(), "Unknown");
       }
       break;
       /* Tracks and Routes ***********************************************/
     case XT_TRACK_NEW:
       if (csv_track) {
         if (WAYPT_HAS(wpt,new_trkseg)) {
-          buff = QString().sprintf(fmp.printfc.constData(), 1);
+          buff = QString::asprintf(fmp.printfc.constData(), 1);
         } else {
-          buff = QString().sprintf(fmp.printfc.constData(), 0);
+          buff = QString::asprintf(fmp.printfc.constData(), 0);
         }
       }
       break;
     case XT_TRACK_NAME:
       if (csv_track) {
         QString r = csv_track->rte_name;
-        buff = QString().sprintf(fmp.printfc.constData(), NONULL(r));
+        buff = QString::asprintf(fmp.printfc.constData(), NONULL(r));
       }
       break;
     case XT_ROUTE_NAME:
       if (csv_route) {
         QString r = csv_route->rte_name;
-        buff = QString().sprintf(fmp.printfc.constData(), NONULL(r));
+        buff = QString::asprintf(fmp.printfc.constData(), NONULL(r));
       }
       break;
 
       /* GPS STUFF *******************************************************/
     case XT_GPS_HDOP:
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->hdop);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->hdop);
       field_is_unknown = !wpt->hdop;
       break;
     case XT_GPS_VDOP:
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->vdop);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->vdop);
       field_is_unknown = !wpt->vdop;
       break;
     case XT_GPS_PDOP:
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->pdop);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->pdop);
       field_is_unknown = !wpt->pdop;
       break;
     case XT_GPS_SAT:
-      buff = QString().sprintf(fmp.printfc.constData(), wpt->sat);
+      buff = QString::asprintf(fmp.printfc.constData(), wpt->sat);
       field_is_unknown = !wpt->sat;
       break;
     case XT_GPS_FIX: {
@@ -1673,61 +1673,61 @@ xcsv_waypt_pr(const Waypoint* wpt)
         fix = "pps";
         break;
       }
-      buff = QString().sprintf(fmp.printfc.constData(), fix);
+      buff = QString::asprintf(fmp.printfc.constData(), fix);
     }
     break;
     /* GMSD ************************************************************/
     case XT_COUNTRY: {
       garmin_fs_t* gmsd = GMSD_FIND(wpt);
-      buff = QString().sprintf(fmp.printfc.constData(), GMSD_GET(country, ""));
+      buff = QString::asprintf(fmp.printfc.constData(), GMSD_GET(country, ""));
     }
     break;
     case XT_STATE: {
       garmin_fs_t* gmsd = GMSD_FIND(wpt);
-      buff = QString().sprintf(fmp.printfc.constData(), GMSD_GET(state, ""));
+      buff = QString::asprintf(fmp.printfc.constData(), GMSD_GET(state, ""));
     }
     break;
     case XT_CITY: {
       garmin_fs_t* gmsd = GMSD_FIND(wpt);
-      buff = QString().sprintf(fmp.printfc.constData(), GMSD_GET(city, ""));
+      buff = QString::asprintf(fmp.printfc.constData(), GMSD_GET(city, ""));
     }
     break;
     case XT_POSTAL_CODE: {
       garmin_fs_t* gmsd = GMSD_FIND(wpt);
-      buff = QString().sprintf(fmp.printfc.constData(), GMSD_GET(postal_code, ""));
+      buff = QString::asprintf(fmp.printfc.constData(), GMSD_GET(postal_code, ""));
     }
     break;
     case XT_STREET_ADDR: {
       garmin_fs_t* gmsd = GMSD_FIND(wpt);
-      buff = QString().sprintf(fmp.printfc.constData(), GMSD_GET(addr, ""));
+      buff = QString::asprintf(fmp.printfc.constData(), GMSD_GET(addr, ""));
     }
     break;
     case XT_PHONE_NR: {
       garmin_fs_t* gmsd = GMSD_FIND(wpt);
-      buff = QString().sprintf(fmp.printfc.constData(), GMSD_GET(phone_nr, ""));
+      buff = QString::asprintf(fmp.printfc.constData(), GMSD_GET(phone_nr, ""));
     }
     break;
     case XT_FACILITY: {
       garmin_fs_t* gmsd = GMSD_FIND(wpt);
-      buff = QString().sprintf(fmp.printfc.constData(), GMSD_GET(facility, ""));
+      buff = QString::asprintf(fmp.printfc.constData(), GMSD_GET(facility, ""));
     }
     case XT_EMAIL: {
       garmin_fs_t* gmsd = GMSD_FIND(wpt);
-      buff = QString().sprintf(fmp.printfc.constData(), GMSD_GET(email, ""));
+      buff = QString::asprintf(fmp.printfc.constData(), GMSD_GET(email, ""));
     }
     break;
     /* specials */
     case XT_FILENAME:
-      buff = QString().sprintf(fmp.printfc.constData(), CSTR(wpt->session->filename));
+      buff = QString::asprintf(fmp.printfc.constData(), CSTR(wpt->session->filename));
       break;
     case XT_FORMAT:
-      buff = QString().sprintf(fmp.printfc.constData(), CSTR(wpt->session->name));
+      buff = QString::asprintf(fmp.printfc.constData(), CSTR(wpt->session->name));
       break;
     case -1:
       if (strncmp(fmp.key.constData(), "LON_10E", 7) == 0) {
-        buff = QString().sprintf(fmp.printfc.constData(), lon * pow(10.0, atof(fmp.key.constData()+7)));
+        buff = QString::asprintf(fmp.printfc.constData(), lon * pow(10.0, atof(fmp.key.constData()+7)));
       } else if (strncmp(fmp.key.constData(), "LAT_10E", 7) == 0) {
-        buff = QString().sprintf(fmp.printfc.constData(), lat * pow(10.0, atof(fmp.key.constData()+7)));
+        buff = QString::asprintf(fmp.printfc.constData(), lat * pow(10.0, atof(fmp.key.constData()+7)));
       }
       break;
     default: